/**
 * 
 */
package myTeam.timeShop.service.impl;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import myTeam.timeShop.LikeService;
import myTeam.timeShop.bean.TbLike;
import myTeam.timeShop.dao.LikeDao;
import myTeam.timeShop.entity.Like;
import myTeam.timeShop.entity.User;

/**
 * @author jiangjintai
 *
 */
@Service("likeService")
public class LikeServiceImpl implements LikeService {
	@Autowired
	LikeDao likeDao;
	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#load(java.lang.Object)
	 */
	@Override
	public TbLike load(String id) {
		// TODO 自动生成的方法存根
		return likeDao.load(id);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#get(java.lang.Object)
	 */
	@Override
	public TbLike get(String id) {
		// TODO 自动生成的方法存根
		return likeDao.get(id);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#findAll()
	 */
	@Override
	public List<TbLike> findAll() {
		// TODO 自动生成的方法存根
		return likeDao.findAll();
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#persist(java.lang.Object)
	 */
	@Override
	public void persist(TbLike entity) {
		// TODO 自动生成的方法存根
		likeDao.persist(entity);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#save(java.lang.Object)
	 */
	@Override
	public String save(TbLike entity) {
		// TODO 自动生成的方法存根
		return likeDao.save(entity);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#saveOrUpdate(java.lang.Object)
	 */
	@Override
	public void saveOrUpdate(TbLike entity) {
		// TODO 自动生成的方法存根
		likeDao.saveOrUpdate(entity);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#delete(java.lang.Object)
	 */
	@Override
	public void delete(String id) {
		// TODO 自动生成的方法存根
		likeDao.delete(id);
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.service.GenericService#flush()
	 */
	@Override
	public void flush() {
		// TODO 自动生成的方法存根
		likeDao.flush();
	}

	/* （非 Javadoc）
	 * @see myTeam.timeShop.LikeService#getAllMyNoSeeLike(java.lang.String)
	 */
	@Override
	
	public List<TbLike> getAllMyNoSeeLike(String filterUserId) {
		List<TbLike> tbLikeList =  this.likeDao.getAllMyNoSeeLike(filterUserId);
		List<TbLike> likeList = new ArrayList<TbLike>();
		for(TbLike l :tbLikeList){
			Like like = new Like ();
			like.setLikeDeleteStatus(l.getLikeDeleteStatus());
			like.setLikeDemandId(l.getTbDemand().getDemandId());
			like.setLikeId(l.getLikeId());
			like.setLikeIsSaw(l.getLikeIsSaw());
			like.setLikeTime(l.getLikeTime());
			like.setLikeUserId(l.getTbUser().getUserId());
			
			User user = new User();
			user.setUserAccount(l.getTbUser().getUserAccount());
			user.setUserFacePath(l.getTbUser().getUserFacePath());
			user.setUserId(l.getTbUser().getUserId());
			user.setUserLevel(l.getTbUser().getUserLevel());
			user.setUserName(l.getTbUser().getUserName());
			user.setUserSchool(l.getTbUser().getUserSchool());
			user.setUserSex(l.getTbUser().getUserSex());
			like.setTbUser(user);
			
			likeList.add(like);
		}
		
		return likeList;
	}

}
